<?php
/**
 * 
 * @desc   底层接口
 * @date    2017-10-27 13:39:30
 * @version $Id$
 */

interface Bases
{
	//主函数
    public function main($mode);

}

class Base implements Bases
{

	//容器
	public $Ioc;

   	//方法
   	public $Method = array();

   	//返回类型
   	public  $out_mode = 'json';

   	//初始化
 	function __construct($Ioc)
	{
		$this ->Ioc ->$Ioc;
	}

   	//主函数
 	public function main($mode){

 	}
  	
  	//匿名调用
    public function getMethod($mode,$data=array())
    {
    	$data = call_user_func_array($mode, array($data));	
    	return $data;
    }


    //检测方法
    public function  isMethod($mode)
    {
        if (!$mode) {
            return false;
        }

        if (!in_array($mode, $this->Method)) {
            return false;
        }

        return true;
    }

    // 跳转
    public function router($url = '')
    {
      if($url && $this->is_url($url) ){
        header("Location: $url");die();
      }else{
        header("Location: /");die();  
      }
    }


    //验证是否url
    public function is_url($url = ''){
      if(filter_var($url,FILTER_VALIDATE_URL)){
        return true;
      }else{
        return false;
      }
    }


    //判断是否是微信浏览器
    public function is_wechat() {
      if (strpos($_SERVER['HTTP_USER_AGENT'], 'MicroMessenger') !== false) {
          return true;
      }

      return false;
  }




}
